# 3.1 用方括号[]表示列表
bicycle = ['trek', 'cannondale', 'redline', 'specialized']

# 3.1.1 访问
print(bicycle[0])
# 反向访问
print(bicycle[-1])
print(bicycle[-2])
print(bicycle[0].title)

# 3.2 修改、添加、删除元素
# 3.2.1 修改
bicycle[1] = 'ducati'
print(f'修改元素1:{bicycle}')

# 3.2.2 添加
bicycle.append('yamaha')
print(f'末尾添加元素: {bicycle}')
bicycle.insert(1, 'suzuki')
print(f'位置1添加新元素: {bicycle}')

# 3.2.3 删除元素
# 使用del语句
del bicycle[0]
print(f'按坐标删除元素: {bicycle}')

# 使用pop()，删除末尾
bicycle.pop()
print(f'使用pop()删除末尾元素: {bicycle}')
# 使用pop(pos) 删除指定坐标元素
bicycle.pop(2)
print(f'使用pop(2)删除指定坐标元素: {bicycle}')

# 使用remove, 根据值删除
bicycle.remove("ducati")
print(f'使用remove, 根据值删除: {bicycle}')

# 3.3 组织列表
# 3.3.1 使用sort() 对列表永久排序
cars = ['bmw', 'audi', 'toyota', 'subaru']
cars.sort()
print(f'按字母顺序排序: {cars}')
cars.sort(reverse=True)
print(f'倒序排序: {cars}')

# 3.3.2 使用sorted()对列表临时排序
print("使用sorted()对列表临时排序:")
print(sorted(cars))
print(cars)

# 3.3.3 翻转列表
print("翻转列表:")
cars.reverse()
print(cars)

# 3.3.4 获取列表长度
print("获取列表长度:")
print(len(bicycle))
print(len(cars))
